package com.tencent.FengZhuang;
/**
 * 
 * 课程目标：
 * 封装的概念、UML类图、构造方法、this关键字、static关键字、方法重载、包（package）
 * 
 * (封装的概念)
 * OOP三大特性：封装、继承、多态。
 * 
 * 封装的概念：
 * 1、将东西包装在一起，然后以新的完整形式呈现出来：
 *           将方法和字段一起包装到一个单元中，单元以类的形式实现。
 * 2、信息隐藏，隐藏对象的实现细节，不让外部直接访问到。      
 * 3、将数据和方法包装进类中，加上具体实现的隐藏，共同被称作封装其结果是一个同时带有特征和行为的数据类型。
 *      （重点：定义类，定义其属性、方法的过程称为封装类）
 * 4、信息隐藏是 OOP 最重要的功能之一，也是使用访问修饰符的原因。
 * 5、信息隐藏的原因包括：
 *       1、对模块的任何实现细节所作的更改不会影响使用该模块的代码。
 *       2、防止用户意外修改数据。
 *       3、是模块易于使用和维护。
 *       
 *  位置：                    private：    默认：      protected：     public：
 *  同一个类                     是                是                   是                   是     
 *  同一个包内的类          否                是                   是                   是   
 *  不同包内的子类          否                否                   是                   是
 *  不同包并且不是子类   否                否                   否                   是
 *       
 * 属性封装的实现：
 * 1、修改属性的可见性来限制对属性的访问。
 * 2、为每个属性创建一对赋值（setter）方法和取值（getter）方法，用于公开对这些属性的访问接口。
 * 3、在setter和getter方法中，依据需要加入对属性操作的限制。
 * 
 * 封装方法的目的：
 * 1、隐藏方法实现细节（方法体），向外部提供公开接口（方法头），以工安全使用。
 * 2、简化调用，方便修改维护。
 * 3、依据需要，可以私有化方法以供类内部使用
 * 
 * 
 * （构造方法）
 * 类的构造方法的概念和作用：
 * 1、构造方法负责初始化对象，为对象的属性赋合适的初始值。
 * 2、创建对象时，其类的构造方法确保在用户操作对象之前，系统保证初始化的进行。
 * 
 * (static 关键字)
 * static关键字的特点：
 * 1、用来修饰类的成员——修饰成员变量的称之为类变量（静态变量），修饰成员方法的称之为类方法（静态方法）
 * 2、当类被加载的时候就会被加载，优先于对象的存在。
 * 3、用来修饰语句块——称之为静态代码块，优于构造方法之前执行，只会执行一次，用来对静态成员的初始化。
 * 4、静态修饰的成员被
 * 5、设计模式是一套被反复使用、多数人知晓的、经过分类编目的，代码设计经验的总结，使用设计模式是为了可重用
 * 代码、让代码更容易被他人理解     
 * 
 * (方法重载)
 * 1、多数程序设计语言要求为每个方法（函数）提供一个独一无二的方法名，不存在方法重载的概念。
 * 2、在 java 中，规定方法签名是解析方法的规则
 * 3、方法重载并不陌生
 * 4、构造方法重载是方法重载的典型实例
 * 
 * (打包的意义)
 * 1、标准的java库是由一系列包组成，包括java.lang 等等，标准java包就是层次型包结构，就如何硬盘上嵌套
 * 的子目录一样，我们可以使用嵌套层次结构来组织包。
 * 2、
 *             
 *
 */
public class test {

	public static void main(String[] args) {
		

	}

}
